{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "\n",
    "width = 6\n",
    "height = 3\n",
    "import matplotlib\n",
    "matplotlib.rcParams['figure.figsize'] = [width, height]\n",
    "\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "## utilities\n",
    "import os\n",
    "\n",
    "## deep learning module\n",
    "import mxnet as mx\n",
    "\n",
    "## data processing\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "\n",
    "## reporting\n",
    "import perf\n",
    "from scipy.stats import pearsonr, spearmanr"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Configure parameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "## some hyperparameters we won't tune via command line inputs\n",
    "DATA_SEGMENTS    = { 'tr': 0.6, 'va': 0.2, 'tst': 0.2}\n",
    "THRESHOLD_EPOCHS = 2\n",
    "COR_THRESHOLD    =  0.005\n",
    "\n",
    "## temporal slicing\n",
    "WIN              = 24 ##* 7\n",
    "H                = 3\n",
    "\n",
    "## model details \n",
    "MODEL            = 'rnn_model'\n",
    "SZ_FILT          = 8\n",
    "N_FILT           = 10\n",
    "RNN_UNITS        = 10\n",
    "SEASONAL_PERIOD  = 24\n",
    "\n",
    "## training details\n",
    "GPU              = 0\n",
    "BATCH_N          = 1024\n",
    "LR               = 0.0001\n",
    "DROP             = 0.2\n",
    "N_EPOCHS         = 30\n",
    "\n",
    "## data details\n",
    "DATA_FILE        = 'electricity.diff.txt'\n",
    "SAVE_DIR         = \"resultsDir\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exercise: Look at the data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "elec = pd.read_csv('electricity.diff.txt')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>V1</th>\n",
       "      <th>V2</th>\n",
       "      <th>V3</th>\n",
       "      <th>V4</th>\n",
       "      <th>V5</th>\n",
       "      <th>V6</th>\n",
       "      <th>V7</th>\n",
       "      <th>V8</th>\n",
       "      <th>V9</th>\n",
       "      <th>V10</th>\n",
       "      <th>...</th>\n",
       "      <th>V312</th>\n",
       "      <th>V313</th>\n",
       "      <th>V314</th>\n",
       "      <th>V315</th>\n",
       "      <th>V316</th>\n",
       "      <th>V317</th>\n",
       "      <th>V318</th>\n",
       "      <th>V319</th>\n",
       "      <th>V320</th>\n",
       "      <th>V321</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>4</td>\n",
       "      <td>23</td>\n",
       "      <td>78</td>\n",
       "      <td>141</td>\n",
       "      <td>77</td>\n",
       "      <td>307</td>\n",
       "      <td>0</td>\n",
       "      <td>262</td>\n",
       "      <td>45</td>\n",
       "      <td>75</td>\n",
       "      <td>...</td>\n",
       "      <td>129</td>\n",
       "      <td>80</td>\n",
       "      <td>15100.0</td>\n",
       "      <td>-76</td>\n",
       "      <td>1615</td>\n",
       "      <td>17</td>\n",
       "      <td>9</td>\n",
       "      <td>619</td>\n",
       "      <td>71</td>\n",
       "      <td>673</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>-20</td>\n",
       "      <td>-123</td>\n",
       "      <td>0</td>\n",
       "      <td>-77</td>\n",
       "      <td>-1</td>\n",
       "      <td>-40</td>\n",
       "      <td>...</td>\n",
       "      <td>12</td>\n",
       "      <td>-22</td>\n",
       "      <td>1400.0</td>\n",
       "      <td>-358</td>\n",
       "      <td>-46</td>\n",
       "      <td>-1</td>\n",
       "      <td>-4</td>\n",
       "      <td>16</td>\n",
       "      <td>-35</td>\n",
       "      <td>-71</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-1</td>\n",
       "      <td>-4</td>\n",
       "      <td>0</td>\n",
       "      <td>-117</td>\n",
       "      <td>-59</td>\n",
       "      <td>-395</td>\n",
       "      <td>-5</td>\n",
       "      <td>-192</td>\n",
       "      <td>-91</td>\n",
       "      <td>-89</td>\n",
       "      <td>...</td>\n",
       "      <td>-16</td>\n",
       "      <td>-139</td>\n",
       "      <td>-2100.0</td>\n",
       "      <td>-63</td>\n",
       "      <td>-206</td>\n",
       "      <td>1</td>\n",
       "      <td>-4</td>\n",
       "      <td>-878</td>\n",
       "      <td>-23</td>\n",
       "      <td>-29</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2</td>\n",
       "      <td>-1</td>\n",
       "      <td>0</td>\n",
       "      <td>-97</td>\n",
       "      <td>-23</td>\n",
       "      <td>-198</td>\n",
       "      <td>-8</td>\n",
       "      <td>-100</td>\n",
       "      <td>7</td>\n",
       "      <td>-32</td>\n",
       "      <td>...</td>\n",
       "      <td>6</td>\n",
       "      <td>-12</td>\n",
       "      <td>-3200.0</td>\n",
       "      <td>-106</td>\n",
       "      <td>-67</td>\n",
       "      <td>10</td>\n",
       "      <td>1</td>\n",
       "      <td>63</td>\n",
       "      <td>-4</td>\n",
       "      <td>-14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-2</td>\n",
       "      <td>1</td>\n",
       "      <td>-125</td>\n",
       "      <td>-6</td>\n",
       "      <td>-12</td>\n",
       "      <td>-6</td>\n",
       "      <td>2</td>\n",
       "      <td>-7</td>\n",
       "      <td>-2</td>\n",
       "      <td>-2</td>\n",
       "      <td>...</td>\n",
       "      <td>-5</td>\n",
       "      <td>110</td>\n",
       "      <td>-4300.0</td>\n",
       "      <td>143</td>\n",
       "      <td>-750</td>\n",
       "      <td>-11</td>\n",
       "      <td>-1</td>\n",
       "      <td>-128</td>\n",
       "      <td>-6</td>\n",
       "      <td>21</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 321 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "   V1  V2   V3   V4  V5   V6  V7   V8  V9  V10  ...  V312  V313     V314  \\\n",
       "0   4  23   78  141  77  307   0  262  45   75  ...   129    80  15100.0   \n",
       "1   3   4    0    4 -20 -123   0  -77  -1  -40  ...    12   -22   1400.0   \n",
       "2  -1  -4    0 -117 -59 -395  -5 -192 -91  -89  ...   -16  -139  -2100.0   \n",
       "3   2  -1    0  -97 -23 -198  -8 -100   7  -32  ...     6   -12  -3200.0   \n",
       "4  -2   1 -125   -6 -12   -6   2   -7  -2   -2  ...    -5   110  -4300.0   \n",
       "\n",
       "   V315  V316  V317  V318  V319  V320  V321  \n",
       "0   -76  1615    17     9   619    71   673  \n",
       "1  -358   -46    -1    -4    16   -35   -71  \n",
       "2   -63  -206     1    -4  -878   -23   -29  \n",
       "3  -106   -67    10     1    63    -4   -14  \n",
       "4   143  -750   -11    -1  -128    -6    21  \n",
       "\n",
       "[5 rows x 321 columns]"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "elec.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7f0302fb7d30>]"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(elec.V1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7f030069ca20>]"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(elec.V1[:96])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Handy data structures"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "## courtesy of https://www.saltycrane.com/blog/2007/11/python-circular-buffer/\n",
    "class RingBuffer:\n",
    "    def __init__(self, size):\n",
    "        self.data = [0 for i in range(size)]\n",
    "\n",
    "    def append(self, x):\n",
    "        self.data.pop(0)\n",
    "        self.data.append(x)\n",
    "\n",
    "    def get(self):\n",
    "        return self.data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data preparation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "################################\n",
    "## DATA PREPARATION ##\n",
    "################################\n",
    "\n",
    "def prepared_data(data_file, win, h, model_name):\n",
    "    df = pd.read_csv(data_file, sep=',', header=0)\n",
    "    x  = df.iloc[:, :].values ## need to drop first column as that's an index not a value\n",
    "    x = (x - np.mean(x, axis = 0)) / (np.std(x, axis = 0)) ## normalize data\n",
    "    \n",
    "    if model_name == 'fc_model':\n",
    "        ## provide first and second step lookbacks in one flat input\n",
    "        X = np.hstack([x[1:-h], x[0:-(h+1)]])\n",
    "        Y = x[(h+1):]\n",
    "        return (X, Y)\n",
    "    else:    \n",
    "        # preallocate X and Y data arrays\n",
    "        # X shape = num examples * time win * num channels (NTC)\n",
    "        X = np.zeros((x.shape[0] - win - h, win, x.shape[1]))\n",
    "        # Y shape = num examples * num channels\n",
    "        Y = np.zeros((x.shape[0] - win - h, x.shape[1]))\n",
    "        \n",
    "        for i in range(win, x.shape[0] - h):\n",
    "            y_i = x[i + h - 1     , :] ## the target value is h steps ahead\n",
    "            x_i = x[(i - win) : i , :] ## the input data are the previous win steps\n",
    "            X[i-win] = x_i\n",
    "            Y[i-win] = y_i\n",
    "\n",
    "        return (X, Y)\n",
    "\n",
    "\n",
    "def prepare_iters(data_file, win, h, model, batch_n):\n",
    "    X, Y = prepared_data(data_file, win, h, model)\n",
    "\n",
    "    n_tr = int(Y.shape[0] * DATA_SEGMENTS['tr'])\n",
    "    n_va = int(Y.shape[0] * DATA_SEGMENTS['va'])\n",
    "\n",
    "    X_tr, X_valid, X_test = X[                      : n_tr], \\\n",
    "                               X[n_tr             : n_tr + n_va], \\\n",
    "                               X[n_tr + n_va : ]\n",
    "    Y_tr, Y_valid, Y_test = Y[                      : n_tr], \\\n",
    "                               Y[n_tr             : n_tr + n_va], \\\n",
    "                               Y[n_tr + n_va : ]\n",
    "    \n",
    "    iter_tr = mx.io.NDArrayIter(data       = X_tr,\n",
    "                                   label      = Y_tr,\n",
    "                                   batch_size = batch_n)\n",
    "    iter_val = mx.io.NDArrayIter(  data       = X_valid,\n",
    "                                   label      = Y_valid,\n",
    "                                   batch_size = batch_n)\n",
    "    iter_test = mx.io.NDArrayIter( data       = X_test,\n",
    "                                   label      = Y_test,\n",
    "                                   batch_size = batch_n)\n",
    "\n",
    "    return (iter_tr, iter_val, iter_test)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Define models"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "################\n",
    "## MODELS ##\n",
    "################\n",
    "\n",
    "def fc_model(iter_train, input_feature_shape, X, Y,\n",
    "             win, sz_filt, n_filter, drop, seasonal_period):\n",
    "    output = mx.sym.FullyConnected(data=X, num_hidden=20)\n",
    "    output = mx.sym.Activation(output, act_type = 'relu')\n",
    "    output = mx.sym.FullyConnected(data=output, num_hidden=10)\n",
    "    output = mx.sym.Activation(output, act_type = 'relu')\n",
    "    output = mx.sym.FullyConnected(data=output, num_hidden=321)\n",
    "    \n",
    "    loss_grad = mx.sym.LinearRegressionOutput(data=output, label=Y)\n",
    "    return (loss_grad,\n",
    "            [v.name for v in iter_train.provide_data],\n",
    "            [v.name for v in iter_train.provide_label])    \n",
    "    \n",
    "def cnn_model(iter_train, input_feature_shape, X, Y,\n",
    "              win, sz_filt, n_filter, drop, seasonal_period):\n",
    "    conv_input = mx.sym.reshape(data=X, shape=(0, 1, win, -1)) \n",
    "    ## Convolution expects 4d input (N x channel x height x width)\n",
    "    ## in our case channel = 1 (similar to a black and white image\n",
    "    ## height = time and width = channels slash electric locations\n",
    "    \n",
    "    cnn_output = mx.sym.Convolution(data=conv_input,\n",
    "                                    kernel=(sz_filt,\n",
    "                                            input_feature_shape[2]),\n",
    "                                    num_filter=n_filter)\n",
    "    cnn_output = mx.sym.Activation(data=cnn_output, act_type='relu')\n",
    "    cnn_output = mx.sym.reshape(mx.sym.transpose(data=cnn_output,\n",
    "                                                 axes=(0, 2, 1, 3)),\n",
    "                                shape=(0, 0, 0)) \n",
    "    cnn_output = mx.sym.Dropout(cnn_output, p=drop)\n",
    "        \n",
    "    output = mx.sym.FullyConnected(data=cnn_output,\n",
    "                                   num_hidden=input_feature_shape[2])\n",
    "    loss_grad = mx.sym.LinearRegressionOutput(data=output, label=Y)\n",
    "    return (loss_grad,\n",
    "            [v.name for v in iter_train.provide_data],\n",
    "            [v.name for v in iter_train.provide_label])    \n",
    "\n",
    "    \n",
    "def rnn_model(iter_train, input_feature_shape, X, Y,\n",
    "              win, sz_filt, n_filter, drop, seasonal_period):\n",
    "    rnn_cells = mx.rnn.SequentialRNNCell()\n",
    "    rnn_cells.add(mx.rnn.GRUCell(num_hidden=RNN_UNITS))\n",
    "    rnn_cells.add(mx.rnn.DropoutCell(drop))\n",
    "    outputs, _ = rnn_cells.unroll(length=win, inputs=X, merge_outputs=False)\n",
    "    rnn_output = outputs[-1] # only take value from final unrolled cell for use later\n",
    "    \n",
    "    output = mx.sym.FullyConnected(data=rnn_output, num_hidden=input_feature_shape[2])\n",
    "    loss_grad = mx.sym.LinearRegressionOutput(data=output, label=Y)\n",
    "    return (loss_grad,\n",
    "            [v.name for v in iter_train.provide_data],\n",
    "            [v.name for v in iter_train.provide_label])    \n",
    "\n",
    "## simplifications to\n",
    "## https://github.com/apache/incubator-mxnet/blob/master/example/multivariate_time_series/src/lstnet.py\n",
    "def simple_lstnet_model(iter_train,  input_feature_shape, X, Y,\n",
    "                        win, sz_filt, n_filter, drop, seasonal_period):\n",
    "    ## must be 4d or 5d to use padding functionality\n",
    "    conv_input = mx.sym.reshape(data=X, shape=(0, 1, win, -1)) \n",
    "\n",
    "    ## convolutional element\n",
    "    ## we add padding at the end of the time win\n",
    "    cnn_output = mx.sym.pad(data=conv_input,\n",
    "                            mode=\"constant\",\n",
    "                            constant_value=0,\n",
    "                            pad_width=(0, 0,\n",
    "                                       0, 0,\n",
    "                                       0, sz_filt - 1, \n",
    "                                       0, 0))\n",
    "    cnn_output = mx.sym.Convolution(data=cnn_output,\n",
    "                                    kernel=(sz_filt,\n",
    "                                            input_feature_shape[2]),\n",
    "                                    num_filter=n_filter)\n",
    "    cnn_output = mx.sym.Activation(data=cnn_output, act_type='relu')\n",
    "    cnn_output = mx.sym.reshape(mx.sym.transpose(data=cnn_output,\n",
    "                                                 axes=(0, 2, 1, 3)),\n",
    "                                shape=(0, 0, 0))\n",
    "    cnn_output = mx.sym.Dropout(cnn_output, p=drop)\n",
    "\n",
    "    ## recurrent element\n",
    "    stacked_rnn_cells = mx.rnn.SequentialRNNCell()\n",
    "    stacked_rnn_cells.add(mx.rnn.GRUCell(num_hidden=RNN_UNITS))\n",
    "    outputs, _ = stacked_rnn_cells.unroll(length=win,\n",
    "                                          inputs=cnn_output,\n",
    "                                          merge_outputs=False)\n",
    "    rnn_output = outputs[-1] # only take value from final unrolled cell for use later\n",
    "    n_outputs = input_feature_shape[2]\n",
    "    cnn_rnn_model = mx.sym.FullyConnected(data=rnn_output,\n",
    "                                          num_hidden=n_outputs)\n",
    "\n",
    "    ## ar element\n",
    "    ar_outputs = []\n",
    "    for i in list(range(input_feature_shape[2])):\n",
    "        ar_series = mx.sym.slice_axis(data=X,\n",
    "                                      axis=2,\n",
    "                                      begin=i,\n",
    "                                      end=i+1)\n",
    "        fc_ar = mx.sym.FullyConnected(data=ar_series, num_hidden=1)\n",
    "        ar_outputs.append(fc_ar)\n",
    "    ar_model = mx.sym.concat(*ar_outputs, dim=1)\n",
    "\n",
    "    output = cnn_rnn_model + ar_model\n",
    "    loss_grad = mx.sym.LinearRegressionOutput(data=output, label=Y)\n",
    "    return (loss_grad,\n",
    "            [v.name for v in iter_train.provide_data],\n",
    "            [v.name for v in iter_train.provide_label])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Training"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "################\n",
    "## TRAINING ##\n",
    "################\n",
    "\n",
    "def train(symbol, iter_train, valid_iter, iter_test,\n",
    "          data_names, label_names,\n",
    "          save_dir, gpu):\n",
    "    ## save training information/results \n",
    "    if not os.path.exists(SAVE_DIR):\n",
    "        os.makedirs(SAVE_DIR)\n",
    "    printFile = open(os.path.join(SAVE_DIR, 'log.txt'), 'w')\n",
    "    def print_to_file(msg):\n",
    "        print(msg)\n",
    "        print(msg, file = printFile, flush = True)\n",
    "    ## print_to_file(args) ## preserve configuation to enable hyperparameter optimization\n",
    "    ## archiving results header\n",
    "    print_to_file('Epoch     Training Cor     Validation Cor')\n",
    "\n",
    "\n",
    "    ## storing prior epoch's values to set an improvement threshold\n",
    "    ## terminates early if progress slow\n",
    "    buf     = RingBuffer(THRESHOLD_EPOCHS)\n",
    "    old_val = None\n",
    "\n",
    "    ## mxnet boilerplate\n",
    "    ## defaults to 1 gpu of which index is 0\n",
    "    ##devs = [mx.gpu(gpu)]\n",
    "    devs   = mx.cpu()\n",
    "    module = mx.mod.Module(symbol,\n",
    "                           data_names=data_names,\n",
    "                           label_names=label_names,\n",
    "                           context=devs)\n",
    "    module.bind(data_shapes=iter_train.provide_data,\n",
    "                label_shapes=iter_train.provide_label)\n",
    "    module.init_params(mx.initializer.Uniform(0.1))\n",
    "    module.init_optimizer(optimizer='adam',\n",
    "                          optimizer_params={'learning_rate': LR})\n",
    "\n",
    "    ## training\n",
    "    for epoch in range( N_EPOCHS):\n",
    "        iter_train.reset()\n",
    "        iter_val.reset()\n",
    "        for batch in iter_train:\n",
    "            module.forward(batch, is_train=True) # compute predictions\n",
    "            module.backward()                    # compute gradients\n",
    "            module.update()                      # update parameters\n",
    "\n",
    "        ## training results\n",
    "        train_pred  = module.predict(iter_train).asnumpy()\n",
    "        train_label = iter_train.label[0][1].asnumpy()\n",
    "        train_perf  = perf.write_eval(train_pred, train_label,\n",
    "                                      save_dir, 'train', epoch)\n",
    "\n",
    "        ## validation results\n",
    "        val_pred  = module.predict(iter_val).asnumpy()\n",
    "        val_label = iter_val.label[0][1].asnumpy()\n",
    "        val_perf = perf.write_eval(val_pred, val_label,\n",
    "                                   save_dir, 'valid', epoch)\n",
    "\n",
    "        print_to_file('%d         %f       %f ' % (epoch, train_perf['COR'], val_perf['COR']))\n",
    "        \n",
    "        if epoch > 0:                                # if we don't yet have measures of improvement, skip\n",
    "            buf.append(val_perf['COR'] - old_val) \n",
    "        if epoch > 2:                                # if we do have measures of improvement, check them\n",
    "            vals = buf.get()\n",
    "            # print(vals)\n",
    "            # print(COR_THRESHOLD)\n",
    "            vals = [v for v in vals if v != 0]\n",
    "            if sum([v < COR_THRESHOLD for v in vals]) == len(vals):\n",
    "                print_to_file('EARLY EXIT')\n",
    "                break\n",
    "        old_val = val_perf['COR']\n",
    "                \n",
    "    ## testing\n",
    "    test_pred  = module.predict(iter_test).asnumpy()\n",
    "    test_label = iter_test.label[0][1].asnumpy()\n",
    "    test_perf = perf.write_eval(test_pred, test_label, save_dir, 'tst', epoch)\n",
    "    print_to_file('\\n TESTING PERFORMANCE')\n",
    "    print_to_file(test_perf)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Run"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch     Training Cor     Validation Cor\n",
      "0         0.013779       0.013129 \n",
      "1         0.020372       0.019002 \n",
      "2         0.026389       0.024237 \n",
      "3         0.033169       0.030117 \n",
      "4         0.042643       0.038726 \n",
      "5         0.054811       0.050001 \n"
     ]
    },
    {
     "ename": "KeyboardInterrupt",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-8-ebb7d5450764>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m     23\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     24\u001b[0m \u001b[0;31m## train\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 25\u001b[0;31m \u001b[0mtrain\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msymbol\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0miter_train\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0miter_val\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0miter_test\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata_names\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabel_names\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mSAVE_DIR\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mGPU\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m<ipython-input-7-5038cd063084>\u001b[0m in \u001b[0;36mtrain\u001b[0;34m(symbol, iter_train, valid_iter, iter_test, data_names, label_names, save_dir, gpu)\u001b[0m\n\u001b[1;32m     56\u001b[0m         \u001b[0mval_label\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0miter_val\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlabel\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0masnumpy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     57\u001b[0m         val_perf = perf.write_eval(val_pred, val_label,\n\u001b[0;32m---> 58\u001b[0;31m                                    save_dir, 'valid', epoch)\n\u001b[0m\u001b[1;32m     59\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     60\u001b[0m         \u001b[0mprint_to_file\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'%d         %f       %f '\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mepoch\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtrain_perf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'COR'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mval_perf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'COR'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/Desktop/SciPy2019/ModernTimeSeriesAnalysis/DeepLearning/Electricity/perf.py\u001b[0m in \u001b[0;36mwrite_eval\u001b[0;34m(pred, label, save_dir, mode, epoch)\u001b[0m\n\u001b[1;32m     31\u001b[0m     \u001b[0;32mif\u001b[0m \u001b[0mepoch\u001b[0m \u001b[0;34m<\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     32\u001b[0m         \u001b[0mpred_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mto_csv\u001b[0m\u001b[0;34m(\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msave_dir\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'%s_pred_0%d.csv'\u001b[0m  \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 33\u001b[0;31m         \u001b[0mlabel_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mto_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msave_dir\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'%s_label_0%d.csv'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     34\u001b[0m     \u001b[0;32melse\u001b[0m \u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     35\u001b[0m         \u001b[0mpred_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mto_csv\u001b[0m\u001b[0;34m(\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msave_dir\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'%s_pred_%d.csv'\u001b[0m  \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepoch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/.local/lib/python3.6/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36mto_csv\u001b[0;34m(self, path_or_buf, sep, na_rep, float_format, columns, header, index, index_label, mode, encoding, compression, quoting, quotechar, line_terminator, chunksize, tupleize_cols, date_format, doublequote, escapechar, decimal)\u001b[0m\n\u001b[1;32m   3018\u001b[0m                                  \u001b[0mdoublequote\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdoublequote\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   3019\u001b[0m                                  escapechar=escapechar, decimal=decimal)\n\u001b[0;32m-> 3020\u001b[0;31m         \u001b[0mformatter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msave\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   3021\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   3022\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mpath_or_buf\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/.local/lib/python3.6/site-packages/pandas/io/formats/csvs.py\u001b[0m in \u001b[0;36msave\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m    170\u001b[0m                 \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwriter\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mUnicodeWriter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mwriter_kwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    171\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 172\u001b[0;31m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_save\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    173\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    174\u001b[0m         \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/.local/lib/python3.6/site-packages/pandas/io/formats/csvs.py\u001b[0m in \u001b[0;36m_save\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m    286\u001b[0m                 \u001b[0;32mbreak\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    287\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 288\u001b[0;31m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_save_chunk\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstart_i\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend_i\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    289\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    290\u001b[0m     \u001b[0;32mdef\u001b[0m \u001b[0m_save_chunk\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstart_i\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend_i\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/.local/lib/python3.6/site-packages/pandas/io/formats/csvs.py\u001b[0m in \u001b[0;36m_save_chunk\u001b[0;34m(self, start_i, end_i)\u001b[0m\n\u001b[1;32m    300\u001b[0m                                   \u001b[0mdecimal\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecimal\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    301\u001b[0m                                   \u001b[0mdate_format\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdate_format\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 302\u001b[0;31m                                   quoting=self.quoting)\n\u001b[0m\u001b[1;32m    303\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    304\u001b[0m             \u001b[0;32mfor\u001b[0m \u001b[0mcol_loc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcol\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mzip\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmgr_locs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0md\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/.local/lib/python3.6/site-packages/pandas/core/internals/blocks.py\u001b[0m in \u001b[0;36mto_native_types\u001b[0;34m(self, slicer, na_rep, float_format, decimal, quoting, **kwargs)\u001b[0m\n\u001b[1;32m   1995\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1996\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mquoting\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1997\u001b[0;31m                 \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mvalues\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mastype\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   1998\u001b[0m             \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1999\u001b[0m                 \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdtype\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'object'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
     ]
    }
   ],
   "source": [
    "# create data iterators\n",
    "iter_train, iter_val, iter_test = prepare_iters(DATA_FILE, WIN, H, MODEL, BATCH_N)    \n",
    "\n",
    "## prepare symbols\n",
    "input_feature_shape = iter_train.provide_data[0][1]    \n",
    "X                   = mx.sym.Variable(iter_train.provide_data[0].name)\n",
    "Y                   = mx.sym.Variable(iter_train.provide_label[0].name)\n",
    "    \n",
    "# set up model\n",
    "model_dict = {\n",
    "    'fc_model'            : fc_model,\n",
    "    'rnn_model'           : rnn_model,\n",
    "    'cnn_model'           : cnn_model,\n",
    "    'simple_lstnet_model' : simple_lstnet_model\n",
    "    }\n",
    "\n",
    "model = model_dict[MODEL]\n",
    "    \n",
    "symbol, data_names, label_names = model(iter_train,\n",
    "                                        input_feature_shape, X, Y,\n",
    "                                        WIN, SZ_FILT,\n",
    "                                        N_FILT, DROP, SEASONAL_PERIOD)\n",
    "\n",
    "## train \n",
    "train(symbol, iter_train, iter_val, iter_test, data_names, label_names, SAVE_DIR, GPU)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exercise: load the results and evaluate the model performance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "results_true = pd.read_csv(\"resultsDir/valid_label_24.csv\", index_col=0)\n",
    "results_pred  = pd.read_csv(\"resultsDir/valid_pred_24.csv\", index_col=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "      <th>...</th>\n",
       "      <th>311</th>\n",
       "      <th>312</th>\n",
       "      <th>313</th>\n",
       "      <th>314</th>\n",
       "      <th>315</th>\n",
       "      <th>316</th>\n",
       "      <th>317</th>\n",
       "      <th>318</th>\n",
       "      <th>319</th>\n",
       "      <th>320</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.560673</td>\n",
       "      <td>-0.076656</td>\n",
       "      <td>0.000371</td>\n",
       "      <td>-0.761436</td>\n",
       "      <td>-1.094621</td>\n",
       "      <td>-1.200368</td>\n",
       "      <td>-0.682399</td>\n",
       "      <td>-1.318577</td>\n",
       "      <td>-0.077902</td>\n",
       "      <td>-0.487915</td>\n",
       "      <td>...</td>\n",
       "      <td>-1.479909</td>\n",
       "      <td>-0.294226</td>\n",
       "      <td>-1.479676</td>\n",
       "      <td>-1.689920</td>\n",
       "      <td>-1.493506e+00</td>\n",
       "      <td>-2.013843</td>\n",
       "      <td>-0.442863</td>\n",
       "      <td>-0.289962</td>\n",
       "      <td>0.009437</td>\n",
       "      <td>-1.102802</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-0.240283</td>\n",
       "      <td>-0.919265</td>\n",
       "      <td>0.000371</td>\n",
       "      <td>-0.526121</td>\n",
       "      <td>-1.235841</td>\n",
       "      <td>-0.910931</td>\n",
       "      <td>-0.227564</td>\n",
       "      <td>-0.725241</td>\n",
       "      <td>0.292009</td>\n",
       "      <td>-0.112612</td>\n",
       "      <td>...</td>\n",
       "      <td>-1.561892</td>\n",
       "      <td>-0.177941</td>\n",
       "      <td>-0.630486</td>\n",
       "      <td>-0.814298</td>\n",
       "      <td>-2.091902e-01</td>\n",
       "      <td>-1.701540</td>\n",
       "      <td>0.049222</td>\n",
       "      <td>0.069681</td>\n",
       "      <td>-0.077024</td>\n",
       "      <td>-0.674628</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.000009</td>\n",
       "      <td>-0.536261</td>\n",
       "      <td>0.000371</td>\n",
       "      <td>-0.719910</td>\n",
       "      <td>-0.953401</td>\n",
       "      <td>-0.502315</td>\n",
       "      <td>-0.454981</td>\n",
       "      <td>-0.131904</td>\n",
       "      <td>-0.915069</td>\n",
       "      <td>-0.206437</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.195507</td>\n",
       "      <td>-0.499435</td>\n",
       "      <td>-0.250923</td>\n",
       "      <td>-0.119471</td>\n",
       "      <td>-1.011783e-01</td>\n",
       "      <td>-0.269254</td>\n",
       "      <td>0.590514</td>\n",
       "      <td>-0.492479</td>\n",
       "      <td>-0.000170</td>\n",
       "      <td>-0.240588</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.000009</td>\n",
       "      <td>-0.076656</td>\n",
       "      <td>0.000371</td>\n",
       "      <td>0.276719</td>\n",
       "      <td>-0.282604</td>\n",
       "      <td>-0.289494</td>\n",
       "      <td>0.227270</td>\n",
       "      <td>-0.065978</td>\n",
       "      <td>0.350416</td>\n",
       "      <td>-0.075081</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.039949</td>\n",
       "      <td>-0.239504</td>\n",
       "      <td>-0.240201</td>\n",
       "      <td>-0.223114</td>\n",
       "      <td>-3.600327e-02</td>\n",
       "      <td>0.032280</td>\n",
       "      <td>0.049222</td>\n",
       "      <td>-2.070717</td>\n",
       "      <td>0.230392</td>\n",
       "      <td>-0.574916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.000009</td>\n",
       "      <td>-0.153257</td>\n",
       "      <td>0.000371</td>\n",
       "      <td>-0.581489</td>\n",
       "      <td>0.070446</td>\n",
       "      <td>-0.204366</td>\n",
       "      <td>-0.227564</td>\n",
       "      <td>0.618007</td>\n",
       "      <td>-0.292061</td>\n",
       "      <td>-0.018786</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.014723</td>\n",
       "      <td>0.143553</td>\n",
       "      <td>-0.645497</td>\n",
       "      <td>-0.024659</td>\n",
       "      <td>6.794120e-07</td>\n",
       "      <td>-0.043104</td>\n",
       "      <td>-1.033364</td>\n",
       "      <td>-0.579771</td>\n",
       "      <td>-0.000170</td>\n",
       "      <td>0.175855</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 321 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "          0         1         2         3         4         5         6  \\\n",
       "0 -0.560673 -0.076656  0.000371 -0.761436 -1.094621 -1.200368 -0.682399   \n",
       "1 -0.240283 -0.919265  0.000371 -0.526121 -1.235841 -0.910931 -0.227564   \n",
       "2  0.000009 -0.536261  0.000371 -0.719910 -0.953401 -0.502315 -0.454981   \n",
       "3  0.000009 -0.076656  0.000371  0.276719 -0.282604 -0.289494  0.227270   \n",
       "4  0.000009 -0.153257  0.000371 -0.581489  0.070446 -0.204366 -0.227564   \n",
       "\n",
       "          7         8         9  ...       311       312       313       314  \\\n",
       "0 -1.318577 -0.077902 -0.487915  ... -1.479909 -0.294226 -1.479676 -1.689920   \n",
       "1 -0.725241  0.292009 -0.112612  ... -1.561892 -0.177941 -0.630486 -0.814298   \n",
       "2 -0.131904 -0.915069 -0.206437  ... -0.195507 -0.499435 -0.250923 -0.119471   \n",
       "3 -0.065978  0.350416 -0.075081  ... -0.039949 -0.239504 -0.240201 -0.223114   \n",
       "4  0.618007 -0.292061 -0.018786  ... -0.014723  0.143553 -0.645497 -0.024659   \n",
       "\n",
       "            315       316       317       318       319       320  \n",
       "0 -1.493506e+00 -2.013843 -0.442863 -0.289962  0.009437 -1.102802  \n",
       "1 -2.091902e-01 -1.701540  0.049222  0.069681 -0.077024 -0.674628  \n",
       "2 -1.011783e-01 -0.269254  0.590514 -0.492479 -0.000170 -0.240588  \n",
       "3 -3.600327e-02  0.032280  0.049222 -2.070717  0.230392 -0.574916  \n",
       "4  6.794120e-07 -0.043104 -1.033364 -0.579771 -0.000170  0.175855  \n",
       "\n",
       "[5 rows x 321 columns]"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "results_true.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.03219708640446075, 0.019592526330542506)"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(results_true.iloc[:, 0], results_pred.iloc[:, 0])\n",
    "pearsonr(results_true.iloc[:, 0], results_pred.iloc[:, 0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(0.15139748211993947, 2.5598510930316026e-28)\n",
      "SpearmanrResult(correlation=0.12351711505936146, pvalue=2.5586847003657923e-19)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(results_true.iloc[:, 25], results_pred.iloc[:, 25])\n",
    "print(pearsonr(results_true.iloc[:,25], results_pred.iloc[:, 25]))\n",
    "print(spearmanr(results_true.iloc[:,25], results_pred.iloc[:, 25]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(0.10120220994410435, 1.9318770996396615e-13)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(results_true.iloc[:, 50], results_pred.iloc[:, 50])\n",
    "print(pearsonr(results_true.iloc[:, 50], results_pred.iloc[:, 50]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fa0a08f5fd0>]"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(results_true.iloc[1800:2000, 50])\n",
    "plt.plot(results_pred.iloc[1800:2000, 50] * 10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7fa08764d080>]"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(results_true.iloc[1800:2000, 25])\n",
    "plt.plot(results_pred.iloc[1800:2000, 25] * 10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([ 4.,  7.,  4., 14., 22., 22., 30., 51., 33., 13.]),\n",
       " array([-0.32969815, -0.26445068, -0.19920321, -0.13395574, -0.06870827,\n",
       "        -0.0034608 ,  0.06178668,  0.12703415,  0.19228162,  0.25752909,\n",
       "         0.32277656]),\n",
       " <a list of 10 Patch objects>)"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.hist(results_pred.iloc[1800:2000, 25])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exercise: how does the model perform against the null model?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
